1. Field of the Invention
This invention relates to a server which transfers, for example, continuous data such as video data in response to a request from a client, and more particularly to a server effectively used with a communication system wherein a plurality of servers are coupled to each other by a network and continuous data of an image file or the like are stored discretely in the servers.
2. Description of the Related Art
Continuous data represented by video data are required to be transferred without interruption to a client. Japanese Patent Laid-Open Application No. Heisei 3-185948 or No. Heisei 6-236330 discloses a system which transfers video data via a network. Further, a server for use with a system of the type just mentioned is conventionally known and disclosed, for example, in Nikkei Electronics, No. 645, pp.133-141. The server disclosed in the document just mentioned will be hereinafter referred to as first prior art.
FIG. 8 shows a communication system in which the server of the first prior art Is employed. Referring to FIG. 8, the communication system shown includes a video server 101 for distributing video data, a plurality of clients 102.sub.1 to 102.sub.N, and a network 103 which interconnects the video server 101 and the clients 102.sub.1 to 102.sub.N. The video server 101 includes a file apparatus 111 for storing video data. The video data stored in the file apparatus 111 are read out by a file read-out section 112 and temporarily stored into a buffer 113, and then sent out to the network 103 by a distribution section 114.
If a request for video data is received from one of the clients 102.sub.1 to 102.sub.N, then the video server 101 reads out relevant data from the file apparatus 111 and temporarily stores the data into the buffer 113. It is assumed now that a request for video data is developed from the client 102.sub.1. The video data in the buffer 113 are successively sent to the distribution section 114 and then sent via the network 103 to and reproduced by the client 102.sub.1.
In the communication system employing the server of the first prior art, the buffer is used so that video data as continuous data may be distributed without interruption from the video server 101 to the clients 102.sub.1 to 102.sub.N side, and the buffer capacity of the buffer 113 on the video server 101 side is set to a rather high capacity in order to reduce the buffer capacity on the clients 102.sub.1 to 102.sub.N side. Accordingly, the video server 101 is constructed such that it need not access the file apparatus 111 every time a request is received from any of the clients 102.sub.1 to 102.sub.N.
The communication system employing the server of the first prior art described above is subject to restriction in number of clients (102.sub.1 to 102.sub.N) to which video data are to be supplied from a relationship to an upper limit to the capacity of a work station which constructs the video server. In order to solve this problem, two countermeasures are available: one is to raise the upper limit to the capacity of a work station, and the other is to use a plurality of video servers which operate in parallel to each other. The countermeasure to raise the upper limit to the capacity of a work station requires development of a new server having a higher capacity. On the other hand, the countermeasure to use a plurality of video servers which operate in parallel to each other is advantageous in that existing comparatively inexpensive work stations can be used for the video servers.
FIG. 9 shows a system wherein a plurality of video servers operate in parallel to each other. The system will be hereinafter referred to as second prior art. In FIG. 9, like elements are denoted by like reference symbols to those of FIG. 8, and overlapping description of those elements is omitted herein to avoid redundancy. Referring to FIG. 9, the system shown includes a video server 121 which in turn includes totaling M first to Mth unit servers 122.sub.1 to 122.sub.M. The unit servers 122.sub.1 to 122.sub.M include, similarly as in the video server 101 of FIG. 8, file apparatus 111.sub.1 to 111.sub.M, file read-out sections 112.sub.1 to 112.sub.M, buffers 113.sub.1 to 113.sub.M, and distribution sections 114.sub.1 to 114.sub.M, respectively. Video data are stored discretely in units of a block in the file apparatus 111.sub.1 to 111.sub.M of the unit servers 122.sub.1 to 122.sub.M.
For example, in order for the first client 102.sub.1 to reproduce video data, the communication system having the construction described above operates in the following manner. It is assumed that the first client 102.sub.1 sends a request for video data for one second to the first unit server 122.sub.1. In response to the request, the file read-out section 112.sub.1 delivers a file read-out command to the first file apparatus 111.sub.1. The first file apparatus 111.sub.1 reads out relevant video data in response to the file read-out command and stores the video data once into the first buffer 113.sub.1. Then, the first distribution section 114.sub.1 transmits the thus stored video data to the first client 102.sub.1 via the network 103.
The first client 102.sub.1 reproduces the video data sent thereto while it sends a next read-out request to the next unit server 122.sub.2. In this manner, each of the clients 102.sub.1 to 102.sub.N successively sends a request to the unit servers 122.sub.1 to 122.sub.M to reproduce the video data which are continuous as a whole. The communication system which employs the server of the second prior art is advantageous in that the number of clients (102.sub.1 to 102.sub.N) can be increased using inexpensive file apparatus (111.sub.1 to 111.sub.M) or work stations.
By the way, the amount of video data is generally very large. Therefore, a hard disk is usually used for file storage apparatus. However, the hard disk employs mechanical operating members in order to read out data. Therefore, after a file read-out command is received, a waiting time such as a time for a seeking operation of a head and/or a latency time is required and object information cannot be read out immediately.
According to the communication system employing the server of the first prior art described hereinabove with reference to FIG. 8, in order to cover the waiting time, a buffer having a comparatively large capacity is used for the buffer 113 in the video server 101. In particular, a comparatively large amount of video data including relevant video data is read out by a one time access to the file apparatus 111 such as a hard disk and is stored at a time into the buffer 113 having a comparatively large capacity. Then, when a request for video data following the relevant video data is received from the client 102, the file apparatus 111 is not accessed, but the requested video data are transferred immediately from within the stored contents of the buffer 113. Consequently, otherwise possible interruption of images on the client 102 side is prevented.
However, if the server of the second prior art described hereinabove with reference to FIG. 9 is used in order to increase the number of clients, a considerably long time elapses before an access is received from the same client. It is assumed that the video server 121 includes, for example, totaling 100 first to one hundredth unit servers 122.sub.1 to 122.sub.100. If it is assumed that each of the unit servers 122.sub.1 to 122.sub.100 transfers data for one second, then 100 seconds elapse before a certain one of the unit servers 122.sub.1 to 122.sub.100 is accessed for the next time from the same one of the clients 102.sub.1 to 102.sub.N. Besides, if it is assumed that each one of the unit servers 122.sub.1 to 122.sub.100 supports, for example, 40 clients in average, then it requires a buffer having a capacity for 40 times 1,000 seconds. In this manner, the system which transfers video data without interruption to a desired client using the server of the second prior art is disadvantageous in that it requires a high cost.